Python cheat sheet

Background:
I have been using Python intensively for about 1 year. From now and then I look up some of the common operations and I decided to record all the code snippets in a handbook.
Table:
| No. | Goal | Solution | Note |
|---|---|---|---|
| 1 | Reverse a string or a list | ||
| 2 | Join a list of strings to a single string | ||
| 3 | Flatten list from list of list | ||
| 4 | Trim a string | ||
| 5 | String replace a substring pattern with another substring | ||
| 6 | Cast float or string to int | auto floor to the nearest integer | |
| 7 | Check string or char is in uppercase | ||
| 8 | If statement in list comprehension | ||
| 9 | If else statement in list comprehension | ||
| 10 | Transpose matrix (2-d array) | ||
| 11 | Rotate matrix (2-d array) 90° clockwise | if you want to do it inplace, do: matrix[:] = [list(i) for i in zip(*matrix[::-1])] |
|
| 12 | Check whether str1 is substring of str2 | ||
| 13 | Get Current work directory | ||
| 14 | Iterate dictionary | ||
| 15 | Split string with multiple delimiters | ||
| 16 | Merge 2 dictionaries | new value is the sum of 2 values from 2 dictionaries | |
| 17 | Initialize list with same primitive values | don’t use this with 2-d array | |
| 18 | Python supports tertiary operator | ||
| 19 | Sort a list of strings by length | ||
| 20 | String split by keep the delimiters | just add outer ( ) to the delimiters | |
| 21 | Sort dictionary by values | if want to sort by keys, change itemgetter(1) to itemgetter(0) | |
| 22 | Print 2-d array in a better format | ||
| 23 | Find index and last index of char in string | ||
| 24 | Find index and last index of item in list | ||
| 25 | Automatically initialize for new key in dictionary | input of defaultdict should be callable, and takes no arguments | |
| 26 | Get arbitrary one element from set | ||
| 27 | Remove element at index 2 from the list | if no argument, last one is removed | |
| 28 | Find locations (start, end) of matches with regular expression | ||
| 29 | Update each value in a dictionary with an operation | ||
| 30 | Find nth occurrence of b in string a | ||
| 31 | Find all indices of an element in a list | ||
| 32 | Return a random element from a list | ||
| 33 | Product of all elements of a list | ||
| 34 | Lexicographical compare of strings | “abcd” > “ab” and “ad” > “ab” | |
| 35 | Integer division | round down | |
| 36 | Two’s complement | equals to -1315 | |
| 37 | Padding spaces to a string to a certain length | ||
| 38 | Get a random float | ||
| 39 | Get a random integer from range | ||
| 40 | Get profile of program, print out most time consuming function calls | ||
| 41 | Get line by line time execution in jupyter notebook | need to specify the function name (e.g. totalNQueens) and the real execution call (e.g. totalNQueens(13))should use “” when passing strings as arguments | |
| 42 | Usage of doctest | there must be at least 1 space on the right side of »> | |
| 43 | Double-ended queue | can be think of a queue + stack | |
| 44 | Printout nicely | print out in sorted order | |
| 45 | Permutation and combination | output: [(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)] | |
| 46 | Get all attributes and their values of an object | ||
| 47 | Get the representation string of the object | if not specified, it will be like:’<main.Duck object at 0x00000133BDE7A6D8>’ | |
| 48 | Save memory by using generator instead of list | instead of sum([x*x for x in range(10)]) | |
| 49 | Variables created inside a loop are accessible outside the loop scope | thej actually is assigned the last element of the list mylist | |
| 50 | Check whether a list iterate till end normally | ||
| 51 | To make class objects comparable, just add function __lt__ | ||
| 52 | Sort a list of list by multiple values |
Written on May 24, 2018
